Programación en Ciencias Sociales (CPO3523)

AndrƩs Cruz



2020-03-16 - Primera clase



Hoja de ruta: http://tiny.cc/curso-r-2020

ƍndice

  1. Introducción: ¿por qué hacer código en ciencias sociales?

  2. Aspectos formales

  3. R, RStudio y el tidyverse

  4. Trabajo en RStudio Cloud
    • Scripts (R Markdown)
    • R bĆ”sico
  5. Encuesta de cierre

¿Por qué hacer código en ciencias sociales?

Interfaz grÔfica (PSPP) vs código (R en RStudio). Elaboración propia.

Interfaz grÔfica (PSPP) vs código (R en RStudio). Elaboración propia.

A. Flexibilidad y capacidad (I)

Fuente: [NBC News (2019)](https://www.nbcnews.com/news/us-news/san-francisco-uses-tech-clear-more-8-000-pot-cases-n975866)

Fuente: NBC News (2019)

A. Flexibilidad y capacidad (II)

  • Las herramientas que veremos en este curso son de código abierto (software libre).
  • Cualquier persona puede tomar cualquier herramienta, ver su código y adaptarlo como mejor le parezca y necesite.
  • Resultados de esta comunidad de software libre:

A. Flexibilidad y capacidad (III)

Fuente: [`@leonugo`, 2018](https://twitter.com/leonugo/status/1014298553500479489)

Fuente: @leonugo, 2018

B. Trayectorias tecnológicas (I)

InterƩs en Google para diferentes programas de estadƭstica/econometrƭa en LatinoamƩrica, 2004-2018. Fuente: Urdinez & Cruz (por publicar).

InterƩs en Google para diferentes programas de estadƭstica/econometrƭa en LatinoamƩrica, 2004-2018. Fuente: Urdinez & Cruz (por publicar).

B. Trayectorias tecnológicas (II)

Fuente: [Agarwal (2018)](https://onlinelibrary.wiley.com/doi/10.1111/puar.12979)

Fuente: Agarwal (2018)

C. Reproducibilidad (I)

  • Gracias al código:
    • Podemos repetir nuestros anĆ”lisis todas las veces que queramos, con las modificaciones que queramos.
    • Podemos automatizar procesos tediosos.
    • Podemos compartir la totalidad de nuestro flujo de trabajo con colegas.
    • Podemos buscar ayuda con facilidad: nuestro código es igual de transparente que el de los/as demĆ”s, y los mensajes de error estĆ”n estandarizados.

C. Reproducibilidad (II) - Ciencia social reproducible

ā€œLa Ćŗnica forma de comprender y evaluar un anĆ”lisis empĆ­rico en su totalidad es conociendo el proceso exacto por el cual se generaron los datos y se realizó el anĆ”lisisā€ (King, 1995, p.Ā 444).

  • La existencia de código es crucial para la replicación de un anĆ”lisis empĆ­rico cuantitativo.
  • El código incluso ayuda a declarar diseƱos de investigación antes de que estos se realicen, como es la premisa del nuevo proyecto DeclareDesign.

Aspectos formales

Temas del curso (I)

  • I. Introducción (a R, RStudio y R Markdown)

  • II. Manejo de bases de datos

Temas del curso (II)

  • III. Visualización de datos
Promedio de esperanza de vida por continente, 2007. Fuente: [Healy, 2018](http://socviz.co/lookatdata.html#what-makes-bad-figures-bad)

Promedio de esperanza de vida por continente, 2007. Fuente: Healy, 2018

Temas del curso (III)

  • IV. BĆŗsqueda efectiva de ayuda

  • V. Manejo avanzado de bases de datos

  • VI. AnĆ”lisis de texto

Temas del curso (IV)

  • VII. MinerĆ­a de datos web y R avanzado
Relación de palabras para 100 tweets de S. Piñera y M. Bachelet. Fuente: [`@AlcratruzDaniel`, 2018](https://twitter.com/AlcatruzDaniel/status/1029946262899052544)

Relación de palabras para 100 tweets de S. Piñera y M. Bachelet. Fuente: @AlcratruzDaniel, 2018

Temas del curso (V)

  • IX. Datos espaciales y mapas
Trayectoria de emisiones per capita en la OCDE, 1997-2011. Elaboración propia.

Trayectoria de emisiones per capita en la OCDE, 1997-2011. Elaboración propia.

Temas del curso (VI)

  • IX. Replicación y generación de reportes

  • X. Cierre (ciencia social computacional, comunidad de R)

MetodologĆ­a de trabajo

  • Clases con enfoque prĆ”ctico (dos por semana). Requisito de asistencia: 70%.
  • Dos tipos de material: mĆ­nimo y ā€œtorpedosā€ (complementario).
  • AyudantĆ­as (por fijar).
    • El ayudante es Vicente Quintero (vmquintero@uc.cl).
    • Repaso breve + ejercicio en clase.
  • Dudas por correo o plataforma.
  • Horas de oficina (a acordar).

Evaluaciones

  • Dos solemnes en formato tarea (30% c/u). I: L 27/04. II: L 08/06.
  • Participación en clases (5%) y ayudantĆ­as (5%).
  • Proyecto final en parejas.
    • Presentación flash (10%). L 15/06.
    • Informe final (20%). W 01/07.
  • Examen.
    • Eximición con nota 5.0 o superior.
    • Nota mĆ­nima de presentación: 3.5.
    • 30% de la nota final, siendo el 70% restante la nota de presentación.
  • Ausencia a evaluaciones, tiempo de corrección, recorrección (referirse al programa).

Otros temas importantes

R, RStudio y el tidyverse

Introducción: R, RStudio, paquetes

  • R es un lenguaje de programación, especialmente desarrollado para estadĆ­stica.
  • RStudio es una ā€œmĆ”scaraā€ para R, que simplifica nuestro trabajo.
  • La comunidad de R ha desarrollado mĆ”s de 15 mil paquetes.
    • AƱaden nuevas funciones a R (y, en muchos casos, lo simplifican).
    • Durante el curso utilizaremos varios, principalmente el tidyverse.

R

  • Es un lenguaje de programación especialmente diseƱado para anĆ”lisis de datos y estadĆ­stica.
  • Su rango de aplicación es muy variado: ciencias sociales, finanzas, bioestadĆ­stica, biologĆ­a computacional, etcĆ©tera.
  • Algunas caracterĆ­sticas tĆ©cnicas:
    • Es un lenguaje de ā€œscriptingā€: podemos correr una lĆ­nea a la vez, no necesitamos compilar el archivo completo (Li et al., 2011). Otro ejemplo: Python. Contrajemplo: C++.
    • EstĆ” orientado a objetos: en R, prĆ”cticamente todo es un objeto, incluidas las funciones (Morandat et al., 2012)..

RStudio

  • Es una ā€œmĆ”scaraā€ para ejecutar R, con una interfaz grĆ”fica que hace algunas cosas mĆ”s sencillas.
  • La versión de escritorio del programa ĀØtiene licencia de software libre.

RStudio: paneles

Paneles de RStudio. Fuente: Elaboración propia.

Paneles de RStudio. Fuente: Elaboración propia.

Paquetes: tidyverse

  • El tidyverse es un ecosistema de paquetes, desarrollado para hacer sentido entre sĆ­.
  • Incluye paquetes coherentes entre sĆ­ para hacer manejo de datos (dplyr, tidyr), visualización (ggplot2), trabajo con texto (stringr), minerĆ­a de datos web (rvest, httr), programación (purrr, magrittr), entre otras actividades generales.

RStudio Cloud

  • Ahora ingresa a RStudio Cloud. Puedes acceder a travĆ©s de los materiales del curso: http://tiny.cc/curso-r-2020.

  • Debes crear una cuenta con tu correo UDP.

  • Tenemos un espacio del curso. Luego, trabajaremos en proyectos especĆ­ficos.

  • Para cada proyecto deben crear su copia personal, en la parte superior derecha de la pantalla (ā€œSave a permanent copyā€). En ella podrĆ”n colocar sus comentarios.

Encuesta de cierre